摘要 :
CONTEXT: Previous work suggests that half of the companies that have tried global software development (GSD) have failed to realise the anticipated outcomes, the root cause of which is often related to requirements problems. Despi...
展开
CONTEXT: Previous work suggests that half of the companies that have tried global software development (GSD) have failed to realise the anticipated outcomes, the root cause of which is often related to requirements problems. Despite the importance of this problem, little research has been carried out to improving requirements engineering process in the GSD projects. OBJECTIVE: In this paper an ongoing project is discussed which will bring together the work of researchers and software development experts to develop a framework for the requirements engineering process of global software development projects (GlobReq). Managers of GSD projects will be able to use GlobReq to plan a requirements engineering process suitable for a specific GSD project. In this paper the need for such a framework along with the proposed methodology, novelty and the preliminary results are discussed. METHODOLOGY: The basis of the GlobReq framework is Sommerville et al's framework of 66 requirements best practices as well as our empirical study with GSD organisations. INITIAL RESULTS: The initial findings from 5 organisations are interesting to observe that not all 66 RE best practices are perceived as high value practices for GSD projects.
收起
摘要 :
This paper describes different aspects of teaching distributed software development, regarding the types of project customers: industry and academia. These approaches enable students to be more engaged in real-world situations, by...
展开
This paper describes different aspects of teaching distributed software development, regarding the types of project customers: industry and academia. These approaches enable students to be more engaged in real-world situations, by having customers from the industry, local or distributed customers in universities, distributed customers in software engineering contests or being involved in an ongoing project, thus simulating the company merging. The methods we describe are used in a distributed project-oriented course, which is jointly carried out by two universities from Sweden and Croatia. The paper presents our experiences of such projects being done during the course, the differences in each approach, issues observed and ways to solve them, in order to create a more engaging education for better-prepared engineers of tomorrow.
收起
摘要 :
This paper describes different aspects of teaching distributed software development, regarding the types of project customers: industry and academia. These approaches enable students to be more engaged in real-world situations, by...
展开
This paper describes different aspects of teaching distributed software development, regarding the types of project customers: industry and academia. These approaches enable students to be more engaged in real-world situations, by having customers from the industry, local or distributed customers in universities, distributed customers in software engineering contests or being involved in an ongoing project, thus simulating the company merging. The methods we describe are used in a distributed project-oriented course, which is jointly carried out by two universities from Sweden and Croatia. The paper presents our experiences of such projects being done during the course, the differences in each approach, issues observed and ways to solve them, in order to create a more engaging education for better-prepared engineers of tomorrow.
收起
摘要 :
With the global distribution of scientific and software engineering skills and with the need to foster multidisciplinary research collaboration across organisations result in teams dispersed separated by time and distance. However...
展开
With the global distribution of scientific and software engineering skills and with the need to foster multidisciplinary research collaboration across organisations result in teams dispersed separated by time and distance. However to attain the potential benefits of such collaboration, there is a critical need for a better management of communication, knowledge and co-ordination across distributed teams. The importance of these factors is becoming increasingly known to organisations requiring them to develop methods and enabling mechanisms in need for more successful and efficient collaboration outcomes. This paper discusses and emphasises the importance of managing these factors in distributed software engineering projects based on experiences drawn from an international scientific research and software engineering project (ePCRN). It presents their impact on the collaborative process and how they may hinder the progress of the software development process. It also presents the methods and mechanisms used in the project to address some of these factors.
收起
摘要 :
The demand in Global Software Engineering (GSE) is increasing every year. GSE helps the software development industry reduce development cost and provide access to resources pool; however, GSE practitioners also need to deal with ...
展开
The demand in Global Software Engineering (GSE) is increasing every year. GSE helps the software development industry reduce development cost and provide access to resources pool; however, GSE practitioners also need to deal with numerous challenges. This impacts Requirements Engineering (RE) process in terms of teamwork, collaboration, knowledge management, time and cultural differences. RE is considered to be one of the important processes in the software development, and several studies have pointed out the need of a new RE process that supports GSE environment. We acknowledged the importance of RE tools in supporting RE process and conducted a study to discover the best way to use RE tools to solve the challenges in GSE. The study used the Feature Analysis Screening Mode approach and generated a list of features with four categories that would address these challenges, namely: (1) Shared Knowledge Management, (2) Workflow and Change Management, (3) Traceability, and (4) System and Data Integration. Four RE tools on the market are selected for investigation. We found out how these tools best support three of the categories, but have limited capability for the first category. Some suggestions were given for future development to provide the support for RE process in GSE environment.
收起
摘要 :
Requirements-related problems are reported to be the main reason in failures of global software development (GSD) projects. There is not much work done to improve requirements practices for GSD projects. In this paper, we report r...
展开
Requirements-related problems are reported to be the main reason in failures of global software development (GSD) projects. There is not much work done to improve requirements practices for GSD projects. In this paper, we report results of a study conducted in an ongoing project whose aim is to develop a framework for the requirements engineering process of global software development projects. The objective of this paper is to report a recent empirical study which was aimed in identifying high perceived value RE practices in the GSD projects. We used an online survey questionnaire to collect data from 39 RE practitioners of GSD organizations. We have identified 11 frequently cited high value RE practices that should be planned and implemented in GSD projects to avoid frequently occurring requirements related problems.
收起
摘要 :
Global Software Development (GSD) has become an established paradigm of developing software. One of the most important prerequisites of successfully supporting GSD projects is the provision of appropriate tooling support. Research...
展开
Global Software Development (GSD) has become an established paradigm of developing software. One of the most important prerequisites of successfully supporting GSD projects is the provision of appropriate tooling support. Researchers and practitioners have developed several dozens of tools to support the GSD paradigm. However, there has been an increased realization that the most commonly used desktop metaphor underpinning existing tools has several limitations in terms of supporting communication, coordination, collaboration and awareness among distributed team members. We propose to leverage the Activity-Based Computing (ABC) paradigm that has been successfully applied to support collaboration and mobility in healthcare environments. We are exploring the viability of leveraging the ABC paradigm for addressing many of the limitations of the existing GSD tools. This paper identifies the requirements that an ABC based infrastructure needs to fulfill to support GSD practitioners. We have extensively reviewed the literature reporting requirements for designing GSD tools and have categorized them in two distinct groups: system quality requirements and system requirements for computer-mediated teamwork. We have analyzed the identified requirements with respect to the ABC principles using a scenario to demonstrate how the requirements reported in the literature and the ABC principles can provide a synergistic foundation for guiding the development of an infrastructure enabling GSD tools to take advantage of the ABC paradigm. We expect these requirements to be used not only by us to develop an infrastructure but also by others to develop or modify GSD tools.
收起
摘要 :
Global Software Development (GSD) has become an established paradigm of developing software. One of the most important prerequisites of successfully supporting GSD projects is the provision of appropriate tooling support. Research...
展开
Global Software Development (GSD) has become an established paradigm of developing software. One of the most important prerequisites of successfully supporting GSD projects is the provision of appropriate tooling support. Researchers and practitioners have developed several dozens of tools to support the GSD paradigm. However, there has been an increased realization that the most commonly used desktop metaphor underpinning existing tools has several limitations in terms of supporting communication, coordination, collaboration and awareness among distributed team members. We propose to leverage the Activity-Based Computing (ABC) paradigm that has been successfully applied to support collaboration and mobility in healthcare environments. We are exploring the viability of leveraging the ABC paradigm for addressing many of the limitations of the existing GSD tools. This paper identifies the requirements that an ABC based infrastructure needs to fulfill to support GSD practitioners. We have extensively reviewed the literature reporting requirements for designing GSD tools and have categorized them in two distinct groups: system quality requirements and system requirements for computer-mediated teamwork. We have analyzed the identified requirements with respect to the ABC principles using a scenario to demonstrate how the requirements reported in the literature and the ABC principles can provide a synergistic foundation for guiding the development of an infrastructure enabling GSD tools to take advantage of the ABC paradigm. We expect these requirements to be used not only by us to develop an infrastructure but also by others to develop or modify GSD tools.
收起
摘要 :
Global software engineering is a growing field of research. The ability to develop software at remote sites provides means to utilize talents and skills in different parts of the world. Organizations and companies benefit from suc...
展开
Global software engineering is a growing field of research. The ability to develop software at remote sites provides means to utilize talents and skills in different parts of the world. Organizations and companies benefit from such diverse pool of developers. Recently, global software engineering courses started to be popular in academic settings to prepare generations of developers who can function in a professional way in such distributed setting. Courses are normally offered as part of computer science or software engineering degrees. There are different challenges pertaining to team members, environment and the interlacing factors like time zones, cultural diversity of team members, location barriers and gender issues. Simulation games have been used to teach classical software engineering courses. Simulation games can be used to illustrate and experiment with concepts like team management, performance and tool selection. SimSE is an educational simulation tool that provides graphical simulation environment to help students to practice anticipated challenges during software development. In this paper, we propose a model for distributed global software development simulation games. The model includes factors like time zones, cultural diversity of users (mainly Hofstede's culture dimensions are used), location barriers and gender issues. These factors will result in game triggers that may affect the development of the virtual project. The model is then implemented using the SimSE model builder. The game will be illustrated showing how it can be used in teaching global software engineering courses. The results will be verified using existing models.
收起
摘要 :
Global software engineering is a growing field of research. The ability to develop software at remote sites provides means to utilize talents and skills in different parts of the world. Organizations and companies benefit from suc...
展开
Global software engineering is a growing field of research. The ability to develop software at remote sites provides means to utilize talents and skills in different parts of the world. Organizations and companies benefit from such diverse pool of developers. Recently, global software engineering courses started to be popular in academic settings to prepare generations of developers who can function in a professional way in such distributed setting. Courses are normally offered as part of computer science or software engineering degrees. There are different challenges pertaining to team members, environment and the interlacing factors like time zones, cultural diversity of team members, location barriers and gender issues. Simulation games have been used to teach classical software engineering courses. Simulation games can be used to illustrate and experiment with concepts like team management, performance and tool selection. SimSE is an educational simulation tool that provides graphical simulation environment to help students to practice anticipated challenges during software development. In this paper, we propose a model for distributed global software development simulation games. The model includes factors like time zones, cultural diversity of users (mainly Hofstede's culture dimensions are used), location barriers and gender issues. These factors will result in game triggers that may affect the development of the virtual project. The model is then implemented using the SimSE model builder. The game will be illustrated showing how it can be used in teaching global software engineering courses. The results will be verified using existing models.
收起